
//3123.找出与数组相加的整数II
class Solution {
public:
    int minimumAddedInteger(vector<int>& nums1, vector<int>& nums2) {
        //只有两个数被删除，这前三个数中必定有一个数是满足条件的
        //可以直接枚举前三个数，找出最小的x

        //对数组进行排序得到一一对应关系
        sort(nums1.begin(),nums1.end());
        sort(nums2.begin(),nums2.end());

        int ret=INT_MAX;
        int n=nums1.size(),m=nums2.size();
        for(int k=0;k<3;k++)
        {
            int x=nums2[0]-nums1[k];
            int i=0,j=0,count=0;
            while(i<n&&j<m)
            {
                if(nums2[j]-nums1[i]!=x) 
                {
                    i++;
                    count++;
                    if(count>2) break;
                }
                else i++,j++;
            }
            if(j==m) ret=min(ret,x);
        }
        return ret;
    }
};